CISCO-APPLIANCE-REDUNDANCY-MIB DEFINITIONS::=BEGIN
IMPORTSMODULE-IDENTITY,NOTIFICATION-TYPE,OBJECT-TYPE,Counter32,Unsigned32FROM SNMPv2-SMI
InetAddressType,InetAddressFROM INET-ADDRESS-MIB
InterfaceIndexOrZeroFROM IF-MIB
DateAndTime,TruthValue,TimeInterval,TEXTUAL-CONVENTIONFROM SNMPv2-TC
MODULE-COMPLIANCE,NOTIFICATION-GROUP,OBJECT-GROUPFROM SNMPv2-CONF
ciscoMgmt
FROM CISCO-SMI;ciscoApplianceRedundancyMIB MODULE-IDENTITYLAST-UPDATED"200412230000Z"ORGANIZATION"Cisco Systems, Inc."CONTACT-INFO"Cisco Systems
Customer Service
Postal: 170 W. Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
E-mail: cs-wlse@cisco.com"DESCRIPTION"This mib defines the SNMP objects to report the status of
High Availability (HA) functionality in Cisco network
management appliance devices. The HA functinality is
achieved via the redundancy of network management appliance
devices.
An network management appliance is a device which combines
hardware and software to provide specific network management
services. Cisco WLSE, Wireless Service Engine (WLSE) is such
an appliance.
The High Availability is achieved via redundancy of
appliances. This redundancy scheme is designed to support
hardware or software failure of the appliances in a non-
disruptive manner. Redundancy is achieved by configuring
a cluster of two appliances with one common virtual IP
address. The data is mirrored from the active appliance to
the standby appliance at regular intervals.
One of the appliances is in active mode, performing all
normal functions. The other appliance is in warm standby
mode; that is, the appliance is up but no application
services are running.
Both the active and standby appliances have their own IP
addresses. The active appliance also owns the virtual IP
address to which all the service requests are made.
The active appliance and standby appliance periodically poll
each other. If the standby appliance cannot reach the active
appliance, it will become the active appliance. This is
called a switchover event. The switchover can be caused by
other causes, for example, via user commands.
Both the active and standby appliances should implement
this MIB and report any exceptions caused by switchover
events."::={ ciscoMgmt 458}ciscoApplRedundancyMIBObjects OBJECTIDENTIFIER::={ ciscoApplianceRedundancyMIB 1}carConfigObjects OBJECTIDENTIFIER::={ ciscoApplRedundancyMIBObjects 1}carSwitchOverObjects OBJECTIDENTIFIER::={ ciscoApplRedundancyMIBObjects 2}
-- Textual ConventionsCarRedundancyState ::=TEXTUAL-CONVENTIONSTATUScurrentDESCRIPTION"States of the HA redundancy:
notConfigured - The appliance is not configured for
redundancy.
starting - The appliance is configured for redundancy
and is initializing. This state could
apply to both active and standby
appliances.
active - The appliance is the active appliance.
preStandby - The appliance is configured to be
standby and is attempting to restore
data from the active appliance and is not
yet in the standby mode.
standby - The appliance is warm standby mode.
activeLostStandby - The active appliance is not getting any
response from the standby appliance.
activeLostNetwork - The active appliance is not getting any
response from the standby appliance or
from the default gateway. There is
possibly network issue.
standbyLostNetwork - The standby appliance is not getting any
response from the active appliance or
from the default gateway. There is
possibly network issue."SYNTAXINTEGER{notConfigured (1),starting (2),active (3),preStandby (4),
standby (5),activeLostStandby (6),activeLostNetwork (7),standbyLostNetwork (8)}CarSwitchOverReason ::=TEXTUAL-CONVENTIONSTATUScurrentDESCRIPTION"Cause of HA switchover event.
lossConnWithActive - Switchover is caused by loss of
connectivity to active appliance.
forcedSwitchOver - Switchover is caused by user command.
unknown - Unknown reason."SYNTAXINTEGER{lossConnWithActive(1),forcedSwitchOver(2),unknown(3)}-- HA Device Configuration datacarRedundancySyncInterval OBJECT-TYPESYNTAXTimeIntervalMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"Time interval at which the active and standby appliances
are synchronized. Synchronization consists of incrementally
backing up the data on the active appliance and restoring
on the standby appliance."::={ carConfigObjects 1}carRedundancyCheckInterval OBJECT-TYPESYNTAXTimeIntervalMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"Time interval to check the availability status of each
appliance. Both the active and standby appliances will
check the status of each other in this time interval.
If the standby appliance is not able to connect to the
active appliance during this check, it will become the
active appliance."::={ carConfigObjects 2}carRedundancyState OBJECT-TYPESYNTAX CarRedundancyState
MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The HA redundancy state of this appliance device."DEFVAL{ notConfigured }::={ carConfigObjects 3}carNotificationEnabled OBJECT-TYPESYNTAXTruthValueMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"Enable or disable HA switchover event notifications via SNMP."DEFVAL{ false }::={ carConfigObjects 4}carHAAddressTable OBJECT-TYPESYNTAXSEQUENCEOF CarHAAddressEntry
MAX-ACCESSnot-accessibleSTATUScurrent
DESCRIPTION"This table keeps the current configuration of the address
information of the active and standby appliances. There is an
entry in this table corresponding to each network interface
that is configured for redundancy. Thus, the number of
entries in this table corresponds to the number of interfaces
configured for redundancy."::={ carConfigObjects 5}carHAAddressEntry OBJECT-TYPESYNTAX CarHAAddressEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"An entry containing address information for HA configuration
on a network interface."INDEX{ carHAAddrTableIndex }::={ carHAAddressTable 1}
CarHAAddressEntry::=SEQUENCE{
carHAAddrTableIndex InterfaceIndexOrZero,
carVirtualAddressType InetAddressType,
carVirtualAddress InetAddress,
carMyAddressType InetAddressType,
carMyAddress InetAddress,
carPeerAddressType InetAddressType,
carPeerAddress InetAddress}carHAAddrTableIndex OBJECT-TYPESYNTAXInterfaceIndexOrZeroMAX-ACCESSnot-accessibleSTATUScurrent
DESCRIPTION"This index matches the interface number for which the Virtual
IP configuration is maintained. For example, the Virtual IP
configured on interface eth0 will be index 0. Entry for eth1
will be index 1,... and so on."::={ carHAAddressEntry 1}carVirtualAddressType OBJECT-TYPESYNTAXInetAddressTypeMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The type of address stored in carVirtualAddress."::={ carHAAddressEntry 2}carVirtualAddress OBJECT-TYPESYNTAXInetAddressMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The virtual IP address configured for this interface. The type
of this mib variable is defined in carVirtualAddressType.
This address binds to the active appliance at all times.
All the management requests should be made to this address."::={ carHAAddressEntry 3}carMyAddressType OBJECT-TYPESYNTAXInetAddressTypeMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The type of address stored in carMyAddress"::={ carHAAddressEntry 4}carMyAddress OBJECT-TYPESYNTAXInetAddressMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The IP address of the interface configured for this HA
configuration in this appliance. The type of this mib variable
is defined in carMyAddressType. Note this value will not be
affected by switchover events."::={ carHAAddressEntry 5}carPeerAddressType OBJECT-TYPESYNTAXInetAddressTypeMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The type of address stored in carPeerAddress"::={ carHAAddressEntry 6}carPeerAddress OBJECT-TYPESYNTAXInetAddressMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The IP address of the interface configured for this HA
configuration in the peer appliance. The type of this mib
variable is defined in carPeerAddressType. Note this value
will not be affected by switchover events."::={ carHAAddressEntry 7}-- HA SwitchOver datacarLastSwitchOverReason OBJECT-TYPESYNTAX CarSwitchOverReason
MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"Cause for the most recent switchover."
::={ carSwitchOverObjects 1}carLastSwitchOverTime OBJECT-TYPESYNTAXDateAndTimeMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The local date and time when the last switchover event
occurred and was logged to the system."::={ carSwitchOverObjects 2}carTotalSwitchOvers OBJECT-TYPESYNTAXCounter32MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The number of all HA switchover events."::={ carSwitchOverObjects 3}carMaxSwitchOverHistoryRecords OBJECT-TYPESYNTAXUnsigned32(0..1024)MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The maximun number of records to keep in
carSwitchOverHistoryTable. New records will replace the old
records on a first-in-first-out basis.
A value of 0 indicates no history will be retained."DEFVAL{20}::={ carSwitchOverObjects 4}carSwitchOverHistoryTable OBJECT-TYPE
SYNTAXSEQUENCEOF CarSwitchOverHistEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"This table keeps an history of HA switchover
events. The maximum number of records is equal
or less than carMaxSwitchOverRecords."::={ carSwitchOverObjects 5}carSwitchOverHistEntry OBJECT-TYPESYNTAX CarSwitchOverHistEntry
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"An entry containing information about a HA switchover event."INDEX{ carSWHistTableIndex }::={ carSwitchOverHistoryTable 1}
CarSwitchOverHistEntry::=SEQUENCE{
carSWHistTableIndex Unsigned32,
carSWHistActiveNodeAddressType InetAddressType,
carSWHistActiveNodeAddress InetAddress,
carSWHistStandbyNodeAddressType InetAddressType,
carSWHistStandbyNodeAddress InetAddress,
carSWHistEventTime DateAndTime,
carSWHistEventReason CarSwitchOverReason
}carSWHistTableIndex OBJECT-TYPESYNTAXUnsigned32(1..4294967295)
MAX-ACCESSnot-accessibleSTATUScurrentDESCRIPTION"An monotonically increasing number for the sole purpose
of indexing entries. When it reaches maximum value, the agent
sets it back to 1."::={ carSwitchOverHistEntry 1}carSWHistActiveNodeAddressType OBJECT-TYPESYNTAXInetAddressTypeMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"Represents the type of address stored in
carSWHistActiveNodeAddress."::={ carSwitchOverHistEntry 2}carSWHistActiveNodeAddress OBJECT-TYPESYNTAXInetAddressMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The address of the active appliance after the switchover
event. carSWHistActiveNodeAddressType specifies the type of
this mib variable."::={ carSwitchOverHistEntry 3}carSWHistStandbyNodeAddressType OBJECT-TYPESYNTAXInetAddressTypeMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"Represents the type of address stored in
carSWHistStandbyNodeAddress."::={ carSwitchOverHistEntry 4}
carSWHistStandbyNodeAddress OBJECT-TYPESYNTAXInetAddressMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The address of the standby appliance after the switchover
event. carSWHistStandbyNodeAddressType specifies the type
of this mib variable."::={ carSwitchOverHistEntry 5}carSWHistEventTime OBJECT-TYPESYNTAXDateAndTimeMAX-ACCESSread-onlySTATUScurrentDESCRIPTION"The local date and time when the switchover event occurred
and was logged to the system."::={ carSwitchOverHistEntry 6}carSWHistEventReason OBJECT-TYPESYNTAX CarSwitchOverReason
MAX-ACCESSread-onlySTATUScurrentDESCRIPTION"Cause of the switchover event."::={ carSwitchOverHistEntry 7}-- NotificationscarHAMIBNotifPrefix OBJECTIDENTIFIER::={ ciscoApplianceRedundancyMIB 2}carHAMIBNotifications OBJECTIDENTIFIER::={ carHAMIBNotifPrefix 0}
carSwitchOverNotification NOTIFICATION-TYPEOBJECTS{
carSWHistEventTime,
carSWHistEventReason,
carSWHistActiveNodeAddressType,
carSWHistActiveNodeAddress,
carSWHistStandbyNodeAddressType,
carSWHistStandbyNodeAddress
}STATUScurrentDESCRIPTION"This notification is sent when a switchover event happened.
This notification can be enabled or disabled via
carNotificationEnabled."::={ carHAMIBNotifications 1}-- conformanceciscoHAMIBConformance OBJECTIDENTIFIER::={ ciscoApplianceRedundancyMIB 3}ciscoHAMIBCompliances OBJECTIDENTIFIER::={ ciscoHAMIBConformance 1}ciscoHAMIBGroups OBJECTIDENTIFIER::={ ciscoHAMIBConformance 2}-- complianceciscoHAMIBCompliance MODULE-COMPLIANCESTATUScurrentDESCRIPTION"The compliance statement for entities which implement the
CISCO-APPLIANCE-HIGH-AVAILABILITY-MIB."MODULE-- This moduleMANDATORY-GROUPS{
ciscoHAConfigDataGroup,
ciscoHASwitchOverDataGroup
}GROUP ciscoHAExceptionNotifGroup
DESCRIPTION"This group is optional."::={ ciscoHAMIBCompliances 1}-- Units of conformanceciscoHAConfigDataGroup OBJECT-GROUPOBJECTS{
carVirtualAddressType,
carVirtualAddress,
carMyAddressType,
carMyAddress,
carPeerAddressType,
carPeerAddress,
carRedundancySyncInterval,
carRedundancyCheckInterval,
carRedundancyState,
carNotificationEnabled
}STATUScurrentDESCRIPTION"A collection of objects that enable the switchover event
notification for the HA network elements."::={ ciscoHAMIBGroups 1}ciscoHASwitchOverDataGroup OBJECT-GROUPOBJECTS{
carLastSwitchOverReason,
carLastSwitchOverTime,
carTotalSwitchOvers,
carMaxSwitchOverHistoryRecords,
carSWHistActiveNodeAddressType,
carSWHistActiveNodeAddress,
carSWHistStandbyNodeAddressType,
carSWHistStandbyNodeAddress,
carSWHistEventTime,
carSWHistEventReason
}STATUScurrentDESCRIPTION"A collection of objects that record the switchover events
for HA network elements."::={ ciscoHAMIBGroups 2}ciscoHAExceptionNotifGroup NOTIFICATION-GROUPNOTIFICATIONS{
carSwitchOverNotification
}STATUScurrentDESCRIPTION"A collection of the monitored exception events."::={ ciscoHAMIBGroups 3}END